// 导入mysql包
const mysql = require('mysql')
// 导入数据库的配置信息,避免冲突并给mysql起一个别名
const { mysql: dbconfig } = require('../config/index')
const con = mysql.createConnection(dbconfig)
// 连接数据库
con.connect()
// 提取数据库的执行语句
// 获取所有
function getAll(sql) {
  return new Promise((resolve, reject) => {
    con.query(sql, (err, data) => {
      if (err) reject(err)
      // 发送数据
      resolve(data)
    })
  })
}
// 获取单个
function getOne(sql) {
  return new Promise((resolve, reject) => {
    // 执行sql语句,返回数据
    con.query(sql, (err, data) => {
      if (err) reject(err)
      resolve(data[0] ? data[0] : null)
    })
  })
}
// 增删改
function exec(sql) {
  return new Promise((resolve, reject) => {
    con.query(sql, (err, data) => {
      // 如果有错误就抛出错误
      if (err) reject(err)
      // 发送数据
      resolve(data)
    })
  })
}
// 导出方法
module.exports = {
  getAll,
  getOne,
  exec,
}
// js第项中属性名和属性值同名的话可以简写成一个就行
// console.log(module);
/* 
    exports={
    getAll:getAll,
    getById:getById,
    exec:exec
}
*/
